Custom Actions
This guide explains how to add a custom Third-Party Actions to your Superflow Flow Builder using the available interface options. Third-Party Actions are reusable API endpoints of a specific Provider. You can define the path, inputs and the expected return values.
Custom Third-Party Providers and Actions are managed on an Workspace level. Changes affect all Apps as soon as they are republished.
Add a Custom Third-Party Action
- Navigate to the Flow Builders Actions Tap, scroll down to Third-Party Actions.
- Click on the “+ Add Action” button that is shown underneath the Provider you want to add your Action to.
Basic Information
- Display Name: Enter the name of the Action (e.g., Send Message).
- Description (optional): Provide a brief description, such as "Send a Slack message".
- Subcategory: Select a subcategory that best fits the Actions’s functionality.
Body
- Method: Define the method of the API request (not available with GraphQL).
- Path: Define the path for the API request. Be sure to start your path with a backslash ("/"). You can use Provider parameters and variables (drag & drop) within your path as well as input variables from your input fields ("Insert Variable" button in input list).
- Type: Select the type of your body (e.g. JSON, Raw, None). When "None" is selected, no body will be sent.
Once you selected the type of your body, you can define the payload of the body itself.
Use of Variables
- You can use Provider parameters and variables (drag & drop) within your schema as well as input variables from your input fields ("Insert Variable" button in input list).
- Lists and maps from your inputs can be used as a whole by inserting them directly at the highest level or you can use specific values of your input lists and maps.
Example of the use of input variables in a JSON body:
{
"myText": "{input.My Text}",
// Use of the entire map
"entireMap": "{input.My Map}",
// Accessing specific values of your map
"specificMap": {
"name": "{input.My Map.Name}",
"description": "{input.My Map.Description}"
},
// Use of the entire list
"myList": "{input.My List}",
// Accessing specific values within the map within the list
"myList": [
{
"name": "{input.My List.{n}.Name}",
"description": "{input.My List.{n}.Description}"
}
]
}
Input Fields
You can add input fields to your Actions. These will be shown in your node settings, when you use your Actions in a Flow and can be used in your request body or URL path.
- Name: Give your input field a name.
- Type: Select a input field type (e.g., Text, Number, List, Map ... ).
- Placeholder: You can define an optional placeholder for the input field.
- Test Value: Optionally you can define a test value. This is used for testing and matching of the response later on. Required fields need a test value for a test to work.
- Lists can only have one sub item. This sub item will define the type of all sub items. Otherwise the list will accept every type.
- Maps can have multiple sub items or can be a simple key value pair (setting "Is Key-Value Pair" required).
- Description: Add an optional description to your input field.
- Required: Decide whether an input is required or not.
Response
Once you have configured all the fields and settings above, you can test your request with your test data and get a response from your API Provider.
- Connection: Select a Provider Connection or create a new one (credentials for your API connection). Connections from your installed Connectors are available.
Click "Test API"
-
Body Here you will see the response body from your API Provider.
-
Header Here you will see the header of the response.
-
Request This shows you what exactly was sent to the API.
Return Values
Return values are the expected return values of your API request. These values will be passed to the next steps within Flows and are useful when you need to process data of your request within your Apps logic.
You can add return values manually but adding them automatically via the Suggested Values Section (after an API test) is way easier. However, if the response does not include all the possible return values, adding them manually may be necessary.
Save & Publish
Once all configurations are complete, click the “Save” button to finalize adding your Action. Note that your new settings will only take effect when you republish your Apps.